Micron Document
██████╗ ███████╗████████╗██╗██████╗ ███████╗██████╗ ██╗ █████╗
██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██║██╔══██╗
██████╔╝█████╗ ██║ ██║██████╔╝█████╗ ██║ ██║██║███████║
██╔══██╗██╔══╝ ██║ ██║██╔═══╝ ██╔══╝ ██║ ██║██║██╔══██║
██║ ██║███████╗ ██║ ██║██║ ███████╗██████╔╝██║██║ ██║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝╚═════╝ ╚═╝╚═╝ ╚═╝


🬧 The NomadNet Encyclopedia | Archives | Info
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b

🔍 Search

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

Squeak
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
Il linguaggio di programmazione mwcaSqueak è un dialetto di mwcqSmalltalk. È mwcgorientato agli oggetti, basato sulle mwcwclassi e con il supporto alle mwdariflessioni.

È derivato direttamente da Smalltalk-80 da un gruppo nella divisione mwdgApple Computer che includeva alcuni degli sviluppatori originali di Smalltalk-80. Il suo sviluppo è stato continuato dallo stesso gruppo a Walt Disney Imagineering, dove era destinato ad essere utilizzato nei progetti Disney interni. Successivamente il gruppo ha proseguito il lavoro con il supporto da laboratori mweaHP Labs, mweqSAP e più di recente mwegY Combinator.

Squeak è mwfamultipiattaforma, cioè i programmi prodotti su una data piattaforma funzionano senza modifiche su tutte le altre piattaforme (come mwfqWindows, mwfgLinux e mwfwmacOS). Il sistema Squeak include il codice per la generazione di una nuova versione della mwgamacchina virtuale (VM) su cui è in esecuzione. Include anche un simulatore VMcite-ref-miranda-2018-2-0[2] scritto in Squeak. Per questi motivi, è facile da mwhqportare su altre piattaforme.

Contents

Usi
Note

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Gli sviluppatori

Dan Ingalls, importante contributore al progetto Squeak, ha scritto il paper su cui Squeak è basato e costruito l'architettura per cinque generazioni del linguaggio Smalltalk.cite-ref-3[3]

Squeak comprende molti degli elementi che mwjgAlan Kay ha proposto nel concetto Dynabook, formulato negli anni '60.

Framework di interfaccia utente

Squeak include quattro mwkgframework di mwkwinterfaccia utente:

• Un'implementazione di Morphic, l'interfaccia grafica di manipolazione diretta di Self. Questa è l'interfaccia principale di Squeak.
• Scripting di mwmgprogrammazione visiva basata su piastrelle in Etoys, basata su Morphic.
• Una nuova interfaccia sperimentale chiamata Tweak. Nel 2001 è emerso che l'architettura Etoy di Squeak aveva raggiunto il limite di quanto le infrastrutture di interfaccia Morphic potrebbero fare. Il ricercatore Hewlett-Packard Andreas Raab ha proposto di definire un "processo di script" e di fornire un meccanismo di pianificazione predefinito che evita diversi problemi più generali.cite-ref-4[4] Ciò ha determinato una nuova interfaccia utente, proposta per sostituire l'interfaccia utente Squeak Morphic in futuro. Tweak ha aggiunto meccanismi di isole, messaggistica asincrona, giocatori e costumi, estensioni di lingua, progetti e script di piastrelle.cite-ref-5[5] Il suo sistema di oggetti di sistema è basato su classi, ma agli utenti, durante la programmazione (scripting), agisce come se fosse basato su prototipi. Gli oggetti Tweak vengono creati e eseguiti nelle finestre del progetto Tweak.
• Un'interfaccia mwqamodel-view-controller (MVC) è stata l'UI primaria nelle versioni Squeak 3.8 e precedenti. È derivato dall'originale interfaccia utente Smalltalk-80 che ha introdotto e diffuso il modello di architettura MVC.cite-ref-6[6] MVC prende il nome dalle tre classi fondamentali del framework. Quindi, il termine "MVC" nel contesto di Squeak si riferisce ad entrambi i framework disponibili dell'interfaccia utente e al modello che segue il quadro. MVC è ancora previsto per i programmatori che hanno voluto utilizzare questo vecchio tipo di interfaccia.

Usi

Molti collaboratori di Squeak collaborano su Open Cobalt, un browser mwsavirtuale mwsqlibero e mwsgopen source e un mwswtoolkit di costruzione che si basa su Squeak.

La prima versione di mwtqScratch fu implementata in Squeak.cite-ref-7[7]

Squeak viene utilizzato anche nel sistema operativo Nintendo ES.cite-ref-gamasutra-8-0[8]

Il sistema di conferenza e collaborazione OpenQwaq è basato su Squeak.cite-ref-9[9]

Licenza

Squeak 4.0 e versioni successive possono essere scaricate senza alcun costo, compreso il mwxwcodice sorgente, come un'immagine di una mwyamacchina virtuale pre-installata sotto mwyqlicenza MIT, ad eccezione di alcuni dei codici Apple originali, che sono regolati dalla mwyglicenza Apache.

Originariamente, Apple ha effettivamente rilasciato Squeak sotto una propria licenza denominata mwzalicenza Squeak. Mentre il codice sorgente era disponibile e le modifiche erano consentite, la licenza Squeak conteneva una mwzqclausola di indennizzo che impediva di qualificarsi come un vero mwzgsoftware libero e open source.

Nel 2006, Apple ha cambiato licenza due volte a Squeak. In primo luogo, nel mese di maggio, Apple ha utilizzato la propria mwaqApple Public Source License, che soddisfa il concetto di mwagFree Software License della mwawFree Software Foundationcite-ref-10[10] e ha ottenuto l'approvazione ufficiale dell'mwcaOpen Source Initiativecite-ref-11[11] come licenza mwdqopen source. La Apple Public Source License, come risulta, non riesce a superare il terzo standard che le licenze Free e Open Source Software sono tenute a rispettare: le mwdgDebian Free Software Guidelines promulgate dal progetto mwdwDebian, una influente distribuzione volontaria di mweaLinux. Per consentire l'inserimento di Etoys nel progetto mwegOne Laptop Per Child è stato eseguito un secondo cambio di licenza utilizzando la licenza Apache. A questo punto è stato anche fatto uno sforzo per affrontare la questione del codice contribuito dai membri della comunità di Squeak, visto che non era nel potere di Apple di effettuare il cambio di licenza unilateralmente.

Per ogni contributo concesso sotto la licenza Squeak dal 1996, è stata ottenuta una dichiarazione di cambio di licenza che autorizza la distribuzione sotto la mwfalicenza MIT e, infine, nel marzo 2010, il risultato finale è stato rilasciato come Squeak 4.0, ora sotto licenze combinate MIT e Apache.cite-ref-12[12]

Macchina virtuale Squeak

La mwgwmacchina virtuale Squeak è una famiglia di mwhamacchine virtuali (VM) utilizzate nelle implementazioni del linguaggio di programmazione mwhqSmalltalk.cite-ref-miranda-2018-2-1[2] Esse sono una parte essenziale di una qualsiasi implementazione di Smalltalk. Tutte sono mwigSoftware open source. L'attuale VM è un sistema di traduzione dinamico ad alte prestazioni. Il codice pertinente viene mantenuto presso il repository OpenSmalltalk su GitHub.cite-ref-13[13]

Note

cite-note-11. mwlqmwlgmwlwTim: Squeak Smalltalk, su mwmarowledge.org. mwmqURL consultato il 28 febbraio 2016.
cite-note-miranda-2018-22. mwnw(mwoamwoqEN) Eliot Miranda, Clément Béra, Elisa Gonzalez Boix e Dan Ingalls, mwogmwowTwo decades of smalltalk VM development: live VM development through simulation tools, in mwpamwpqProceedings of the 10th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages (mwpgmwpwPDF), ACM Digital Library, 4 novembre 2018, pp.mwqa 57-66, mwqqDOI:mwqg10.1145/3281287.3281295, mwqwISBNmwra 978-14503-6071-5, mwrgOCLCmwrw mwsa1159174710. mwsqURL consultato il 9 novembre 2020 mwsg(mwswarchiviato il 9 ottobre 2022).
cite-note-33. mwtw(mwuamwuqEN) Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace e Alan Kay, mwugmwuwBack to the Future: the story of Squeak, a practical Smalltalk written in itself, in mwvaACM SIGPLAN Notices, vol.mwvq 32, n.mwvg 10, ACM Digital Library, 1997, pp.mwvw 318-326, mwwaDOI:mwwq10.1145/263700.263754. mwwgURL consultato il 12 giugno 2011.
cite-note-44. mwxg(mwxwmwyaEN) mwyqmwygTweak: OriginalTweakMemo, su mwywtweakproject.org, 6 luglio 2001. mwzaURL consultato il 12 giugno 2011 mwzq(archiviato dall'mwzgurl originale il 2 ottobre 2011).
cite-note-55. mw0g(mw0wmw1aEN) mw1qmw1gTweak: Whitepapers, su mw1wtweakproject.org. mw2aURL consultato il 12 giugno 2011 mw2q(archiviato dall'mw2gurl originale il 2 ottobre 2011).
cite-note-66. mw3g(mw3wmw4aEN) Steve Burbeck, mw4qmw4gHow to use Model-View-Controller (MVC), su mw4wst-www.cs.uiuc.edu, 4 aprile 1997. mw5aURL consultato il 12 giugno 2011 mw5q(archiviato dall'mw5gurl originale il 1º agosto 2009).
cite-note-77. mw6g(mw6wmw7aEN) mw7qmw7gScratch, su mw7wwiki.squeak.org. mw8aURL consultato il 23 marzo 2022.
cite-note-gamasutra-88. mw9a(mw9qmw9gEN) mw9wmw-aInside Nintendo's ES Open-Source Operating System, su mw-qGamasutra, 4 dicembre 2007. mw-gURL consultato il 5 dicembre 2007.
cite-note-99. mw-g(mw-wmwaqaEN) mwaqemwaqiMoving Immersive Collaboration Forward, su mwaqmteleplace.wordpress.com, 3 maggio 2011.
cite-note-1010. mwaqc(mwaqgmwaqkEN) mwaqomwaqsFSF's Opinion on the Apple Public Source License (APSL) 2.0, su mwaqwgnu.org, 7 maggio 2011. mwaq0URL consultato il 12 giugno 2011.
cite-note-1111. mware(mwarimwarmEN) mwarqmwaruClarification of the APSL: Press Releases OS Clarifies The Status Of The APSL, su mwaryopensource.org, 17 marzo 1999. mwarcURL consultato il 12 giugno 2011.
cite-note-1212. mwars(mwarwmwar0EN) mwar4mwar8Squeak 4.0 released - now under MIT/Apache license, su mwasah-online.com, The H Open, 16 marzo 2010. mwaseURL consultato il 12 giugno 2011.
cite-note-1313. mwasumwasymwascOpenSmalltalk/opensmalltalk-vm, su mwasggithub.com.

Altri progetti

Altri progetti

• Wikimedia Commons

• Wikimedia Commons contiene immagini o altri file su Squeak

Collegamenti esterni

• Sito ufficiale, su squeak.org.
• citerefgithub(EN) Squeak, su GitHub.
• Repository sorgenti di Squeak, su github.com.